﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RagSharpCore.Service;



public class SearchResultItem
{
	// 集合名称
	public string CollectionName { get; set; } = string.Empty;

	// 字段数据数组
	public List<FieldsDataItem> FieldsData { get; set; } = new List<FieldsDataItem>();

	// IDs对象（包含long类型ID和string类型ID）
	public IdsData Ids { get; set; } = new IdsData();

	// 查询数量
	public int NumQueries { get; set; }

	// 分数数组
	public List<double> Scores { get; set; } = new List<double>();

	// 单条查询的限制数量
	public int Limit { get; set; }

	// 多条查询的限制数量数组
	public List<int> Limits { get; set; } = new List<int>();

	// 嵌套类：FieldsData数组中的元素结构
	public class FieldsDataItem
	{
		public string FieldName { get; set; } = string.Empty;
		public int RowCount { get; set; }
		public int FieldId { get; set; }
		public int DataType { get; set; }
		public bool IsDynamic { get; set; }
	}

	// 嵌套类：Ids对象结构
	public class IdsData
	{
		// long类型ID数组（可能为null）
		public List<long>? LongIds { get; set; }

		// string类型ID数组（可能为null）
		public List<string>? StringIds { get; set; }
	}
}